package com.hsj;

import java.util.ArrayList;
import java.util.Collection;

/**
 *   工厂模式，   ： 定义一个用于创建对象的接口，让子类决定实例化哪个类，工厂方法使一个类的实例化延迟到其子类
 *   将之前的核心工厂 变成一个 抽象的接口，
 *   他负责给出 工厂应该实现抽象方法， 他不在负责创建， 而是将创建对象的动作交给 子类去做, 子工厂负责生成具体的产品对象
 *   开闭原则== 程序对于 拓展是 开放度 ， 对于修改 是关闭的
 *
 *   Collection 的 iterator() 方法 就是使用工厂类，   ArrayList创建适合自己的 迭代器对象
 */
public class _03_Factory {

    public static void main(String[] args) {
        Collection collection = new ArrayList();
    }
}


abstract class Factory {  //抽象工厂

}